cmake_minimum_required(VERSION 2.8.11)

set(TARGET_NAME MusicCore)
project(${TARGET_NAME})

if(COMMAND cmake_policy)
    cmake_policy(SET CMP0003 OLD)
    cmake_policy(SET CMP0005 OLD)
endif(COMMAND cmake_policy)

add_definitions(-DQT_NO_DEBUG)
add_definitions(-DQT_THREAD)

set(MUSIC_HEADERS
    ${MUSIC_NETWORK_DIR}/radio/musicradiochannelthread.h
    ${MUSIC_NETWORK_DIR}/radio/musicradioplaylistthread.h
    ${MUSIC_NETWORK_DIR}/radio/musicradiosongsthread.h
    ${MUSIC_NETWORK_DIR}/radio/musicradiothreadabstract.h
    ${MUSIC_NETWORK_DIR}/nr/musicdatadownloadthread.h
    ${MUSIC_NETWORK_DIR}/nr/musictextdownloadthread.h
    ${MUSIC_NETWORK_DIR}/nr/musicdatatagdownloadthread.h
    ${MUSIC_NETWORK_DIR}/tt/musicdownloadttinterface.h
    ${MUSIC_NETWORK_DIR}/tt/musicttdatadownloadthread.h
    ${MUSIC_NETWORK_DIR}/tt/musictttextdownloadthread.h
    ${MUSIC_NETWORK_DIR}/tt/musicdownloadqueryttthread.h
    ${MUSIC_NETWORK_DIR}/tt/musicdownloadqueryttalbumthread.h
    ${MUSIC_NETWORK_DIR}/tt/musicdownloadqueryttartistthread.h
    ${MUSIC_NETWORK_DIR}/tt/musicdownloadttinterface.h
    ${MUSIC_NETWORK_DIR}/wy/musicdownloadwyinterface.h
    ${MUSIC_NETWORK_DIR}/wy/musicdownloadquerywythread.h
    ${MUSIC_NETWORK_DIR}/wy/musicwytextdownloadthread.h
    ${MUSIC_NETWORK_DIR}/wy/musicwycommentsthread.h
    ${MUSIC_NETWORK_DIR}/wy/musicwydiscoverlistthread.h
    ${MUSIC_NETWORK_DIR}/wy/musicdownloadquerywyalbumthread.h
    ${MUSIC_NETWORK_DIR}/wy/musicdownloadquerywyartistthread.h
    ${MUSIC_NETWORK_DIR}/xm/musicdownloadxminterface.h
    ${MUSIC_NETWORK_DIR}/xm/musicdownloadqueryxmthread.h
    ${MUSIC_NETWORK_DIR}/xm/musicdownloadqueryxmalbumthread.h
    ${MUSIC_NETWORK_DIR}/xm/musicdownloadqueryxmartistthread.h
    ${MUSIC_NETWORK_DIR}/xm/musicxmtextdownloadthread.h
    ${MUSIC_NETWORK_DIR}/kg/musicdownloadquerykgthread.h
    ${MUSIC_NETWORK_DIR}/kg/musicdownloadquerykgalbumthread.h
    ${MUSIC_NETWORK_DIR}/kg/musicdownloadquerykgartistthread.h
    ${MUSIC_NETWORK_DIR}/kg/musicdownloadkginterface.h
    ${MUSIC_NETWORK_DIR}/kw/musicdownloadquerykwthread.h
    ${MUSIC_NETWORK_DIR}/kw/musicdownloadquerykwalbumthread.h
    ${MUSIC_NETWORK_DIR}/kw/musicdownloadquerykwartistthread.h
    ${MUSIC_NETWORK_DIR}/kw/musicdownloadkwinterface.h
    ${MUSIC_NETWORK_DIR}/kw/musickwtextdownloadthread.h
    ${MUSIC_NETWORK_DIR}/bd/musicdownloadquerybdthread.h
    ${MUSIC_NETWORK_DIR}/bd/musicdownloadquerybdalbumthread.h
    ${MUSIC_NETWORK_DIR}/bd/musicdownloadquerybdartistthread.h
    ${MUSIC_NETWORK_DIR}/bd/musicdownloadbdinterface.h
    ${MUSIC_NETWORK_DIR}/qq/musicdownloadqueryqqthread.h
    ${MUSIC_NETWORK_DIR}/qq/musicdownloadqueryqqalbumthread.h
    ${MUSIC_NETWORK_DIR}/qq/musicdownloadqueryqqartistthread.h
    ${MUSIC_NETWORK_DIR}/qq/musicdownloadqqinterface.h
    ${MUSIC_NETWORK_DIR}/qq/musicqqtextdownloadthread.h
    ${MUSIC_NETWORK_DIR}/yyt/musicdownloadqueryyytthread.h
    ${MUSIC_NETWORK_DIR}/musicnetworkabstract.h
    ${MUSIC_NETWORK_DIR}/musicdownloadthreadabstract.h
    ${MUSIC_NETWORK_DIR}/musicsourcedownloadthread.h
    ${MUSIC_NETWORK_DIR}/musicnetworkthread.h
    ${MUSIC_NETWORK_DIR}/musicnetworkproxy.h
    ${MUSIC_NETWORK_DIR}/musicnetworkoperator.h
    ${MUSIC_NETWORK_DIR}/musicnetworktestthread.h
    ${MUSIC_NETWORK_DIR}/musicbackgrounddownload.h
    ${MUSIC_NETWORK_DIR}/musicdownloadqueuecache.h
    ${MUSIC_NETWORK_DIR}/musicdownloadqueryfactory.h
    ${MUSIC_NETWORK_DIR}/musicdownloadquerythreadabstract.h
    ${MUSIC_NETWORK_DIR}/musictranslationthread.h
    ${MUSIC_NETWORK_DIR}/musicvoicettsthread.h
    ${MUSIC_NETWORK_DIR}/musicidentifysongsthread.h
    ${MUSIC_CORE_DIR}/utils/musiccoreutils.h
    ${MUSIC_CORE_DIR}/utils/musiccoreutils.h
    ${MUSIC_CORE_DIR}/utils/musicwidgetutils.h
    ${MUSIC_CORE_DIR}/utils/musicnumberutils.h
    ${MUSIC_CORE_DIR}/utils/musicstringutils.h
    ${MUSIC_CORE_DIR}/musicobject.h
    ${MUSIC_CORE_DIR}/musicformats.h
    ${MUSIC_CORE_DIR}/musicglobaldefine.h
    ${MUSIC_CORE_DIR}/musicglobalhotkey.h
    ${MUSIC_CORE_DIR}/musictime.h
    ${MUSIC_CORE_DIR}/musicxmlconfigmanager.h
    ${MUSIC_CORE_DIR}/musicplayer.h
    ${MUSIC_CORE_DIR}/musicplaylist.h
    ${MUSIC_CORE_DIR}/musicabstractxml.h
    ${MUSIC_CORE_DIR}/musicbackgroundmanager.h
    ${MUSIC_CORE_DIR}/musicsettingmanager.h
    ${MUSIC_CORE_DIR}/musicconnectionpool.h
    ${MUSIC_CORE_DIR}/musicregeditmanager.h
    ${MUSIC_CORE_DIR}/musicsingleton.h
    ${MUSIC_CORE_DIR}/musiccoremplayer.h
    ${MUSIC_CORE_DIR}/musicsong.h
    ${MUSIC_CORE_DIR}/musicsongtag.h
    ${MUSIC_CORE_DIR}/musiccryptographichash.h
    ${MUSIC_CORE_DIR}/musicsemaphoreloop.h
    ${MUSIC_LOCALSEARCH_DIR}/core/musiclocalsongsearchrecordconfigmanager.h
    ${MUSIC_LOCALSEARCH_DIR}/musiclocalsongsearchdialog.h
    ${MUSIC_LOCALSEARCH_DIR}/musiclocalsongsearchedit.h
    ${MUSIC_LOCALSEARCH_DIR}/musiclocalsongsearchinlineedit.h
    ${MUSIC_LOCALSEARCH_DIR}/musiclocalsongsearchpopwidget.h
    ${MUSIC_LRCMANAGER_DIR}/musiclrcanalysis.h
    ${MUSIC_LRCMANAGER_DIR}/musiclrcmanager.h
    ${MUSIC_LRCMANAGER_DIR}/musiclrcmanagerfordesktop.h
    ${MUSIC_LRCMANAGER_DIR}/musiclrcmanagerforinline.h
    ${MUSIC_LRCMANAGER_DIR}/musiclrccontainer.h
    ${MUSIC_LRCMANAGER_DIR}/musiclrccontainerfordesktop.h
    ${MUSIC_LRCMANAGER_DIR}/musiclrccontainerforinline.h
    ${MUSIC_LRCMANAGER_DIR}/musiclrcsearchwidget.h
    ${MUSIC_LRCMANAGER_DIR}/musiclrcsearchtablewidget.h
    ${MUSIC_LRCMANAGER_DIR}/musiclrcartphotouploadwidget.h
    ${MUSIC_LRCMANAGER_DIR}/musiclrcartphotolabel.h
    ${MUSIC_LRCMANAGER_DIR}/musiclrcfloatwidget.h
    ${MUSIC_LRCMANAGER_DIR}/musiclrcfloatsettingwidget.h
    ${MUSIC_LRCMANAGER_DIR}/musiclrcfloatphotowidget.h
    ${MUSIC_LRCMANAGER_DIR}/musiclrcmakerwidget.h
    ${MUSIC_LRCMANAGER_DIR}/musiclrcerrorwidget.h
    ${MUSIC_LRCMANAGER_DIR}/musiclrclocallinkwidget.h
    ${MUSIC_LRCMANAGER_DIR}/musiclrcfromkrc.h
    ${MUSIC_LRCMANAGER_DIR}/musiclrccommentswidget.h
    ${MUSIC_LRCMANAGER_DIR}/musiclrctranslatedwidget.h
    ${MUSIC_LRCMANAGER_DIR}/musiclrccolorwidget.h
    ${MUSIC_REMOTEWIDGET_DIR}/musicremotewidget.h
    ${MUSIC_REMOTEWIDGET_DIR}/musicremotewidgetforsquare.h
    ${MUSIC_REMOTEWIDGET_DIR}/musicremotewidgetforrectangle.h
    ${MUSIC_REMOTEWIDGET_DIR}/musicremotewidgetfordiamond.h
    ${MUSIC_REMOTEWIDGET_DIR}/musicremotewidgetforcircle.h
    ${MUSIC_REMOTEWIDGET_DIR}/musicremotewidgetforsimplestyle.h
    ${MUSIC_REMOTEWIDGET_DIR}/musicremotewidgetforcomplexstyle.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/core/musicaudiorecordercore.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/core/musicdesktopwallpaperthread.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/core/musictimerautoobject.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/core/musiclocalsongsmanagerthread.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/core/musicnetworkspeedtestthread.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/core/musicmobiledevicesthread.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/core/musicsongchecktoolsunit.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/core/musicsongchecktoolscore.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/musiclocalsongstablewidget.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicnetworkspeedsuspensionwidget.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicnetworkspeedtestwidget.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicnetworkconnectiontestwidget.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicspeedmeterwidget.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicvolumegainwidget.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicsoundtouchwidget.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicmobiledeviceswidget.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicaudiorecorderwidget.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/musictimerwidget.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/musiclocalsongsmanagerwidget.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/musictransformwidget.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicfileinformationwidget.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicdesktopwallpaperwidget.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicsongringtonemakerwidget.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicidentifysongswidget.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicsongchecktoolswidget.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicsongchecktoolstablewidget.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicsongchecktoolsitemselecteddialog.h
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicgrabwidget.h
    ${MUSIC_TOOLSWIDGET_DIR}/core/musicdownloadrecordconfigmanager.h
    ${MUSIC_TOOLSWIDGET_DIR}/core/musicwebentainradiodatebase.h
    ${MUSIC_TOOLSWIDGET_DIR}/core/musicfilereceiveserver.h
    ${MUSIC_TOOLSWIDGET_DIR}/core/musicfilesenderserver.h
    ${MUSIC_TOOLSWIDGET_DIR}/musicsongstoolboxwidget.h
    ${MUSIC_TOOLSWIDGET_DIR}/musicsongssummariziedwidget.h
    ${MUSIC_TOOLSWIDGET_DIR}/musictoolsetswidget.h
    ${MUSIC_TOOLSWIDGET_DIR}/musicdownloadrecordwidget.h
    ${MUSIC_TOOLSWIDGET_DIR}/musicconnectmobilewidget.h
    ${MUSIC_TOOLSWIDGET_DIR}/musicconnecttransferwidget.h
    ${MUSIC_TOOLSWIDGET_DIR}/musicconnecttransfertablewidget.h
    ${MUSIC_TOOLSWIDGET_DIR}/musicwebradiotoolwidget.h
    ${MUSIC_TOOLSWIDGET_DIR}/musicwebentainradiowidget.h
    ${MUSIC_TOOLSWIDGET_DIR}/musicwebentainradiolistview.h
    ${MUSIC_TOOLSWIDGET_DIR}/musicwebmusicradiolistview.h
    ${MUSIC_TOOLSWIDGET_DIR}/musicwebmusicradiowidget.h
    ${MUSIC_TOOLSWIDGET_DIR}/musiccloudfilemanagerdialog.h
    ${MUSIC_TOOLSWIDGET_DIR}/musiccloudsharedsongwidget.h
    ${MUSIC_TOOLSWIDGET_DIR}/musiccloudtablewidget.h
    ${MUSIC_USERMANAGER_DIR}/core/musicusermodel.h
    ${MUSIC_USERMANAGER_DIR}/core/musicuserconfigmanager.h
    ${MUSIC_USERMANAGER_DIR}/musicusermanagerdialog.h
    ${MUSIC_USERMANAGER_DIR}/musicuserdialog.h
    ${MUSIC_USERMANAGER_DIR}/musicuserlineedit.h
    ${MUSIC_USERMANAGER_DIR}/musicuserwindow.h
    ${MUSIC_USERMANAGER_DIR}/musicuserrecordwidget.h
    ${MUSIC_VIDEOKITS_DIR}/core/musicbarragerecordconfigmanager.h
    ${MUSIC_VIDEOKITS_DIR}/core/musicbarragewidget.h
    ${MUSIC_VIDEOKITS_DIR}/musicvideocontrolwidget.h
    ${MUSIC_VIDEOKITS_DIR}/musicvideoview.h
    ${MUSIC_VIDEOKITS_DIR}/musicvideotablewidget.h
    ${MUSIC_VIDEOKITS_DIR}/musicvideoplaywidget.h
    ${MUSIC_VIDEOKITS_DIR}/musicvideofloatwidget.h
    ${MUSIC_VIDEOKITS_DIR}/musicvideoqualitypopwidget.h
    ${MUSIC_VIDEOKITS_DIR}/musicvideobarragestylepopwidget.h
    ${MUSIC_WIDGETCORE_DIR}/musicabstracttablewidget.h
    ${MUSIC_WIDGETCORE_DIR}/musicabstractmovedialog.h
    ${MUSIC_WIDGETCORE_DIR}/musicabstractmovewidget.h
    ${MUSIC_WIDGETCORE_DIR}/musicabstractmoveresizewidget.h
    ${MUSIC_WIDGETCORE_DIR}/musicfillitemtablewidget.h
    ${MUSIC_WIDGETCORE_DIR}/musicquerytablewidget.h
    ${MUSIC_WIDGETCORE_DIR}/musicqueryfoundtablewidget.h
    ${MUSIC_WIDGETCORE_DIR}/musicslowmovingtablewidget.h
    ${MUSIC_WIDGETCORE_DIR}/musicitemdelegate.h
    ${MUSIC_WIDGETCORE_DIR}/musicmarqueewidget.h
    ${MUSIC_WIDGETCORE_DIR}/musicpreviewlabel.h
    ${MUSIC_WIDGETCORE_DIR}/musicmessagebox.h
    ${MUSIC_WIDGETCORE_DIR}/musicprogresswidget.h
    ${MUSIC_WIDGETCORE_DIR}/musicclickedlabel.h
    ${MUSIC_WIDGETCORE_DIR}/musicclickedslider.h
    ${MUSIC_WIDGETCORE_DIR}/musicmovinglabelslider.h
    ${MUSIC_WIDGETCORE_DIR}/musictoastlabel.h
    ${MUSIC_WIDGETCORE_DIR}/musicroundanimationlabel.h
    ${MUSIC_WIDGETCORE_DIR}/musiccodearea.h
    ${MUSIC_WIDGETCORE_DIR}/musicfloatabstractwidget.h
    ${MUSIC_WIDGETCORE_DIR}/musictimersliderwidget.h
    ${MUSIC_WIDGETCORE_DIR}/musiccutsliderwidget.h
    ${MUSIC_WIDGETCORE_DIR}/musicanimationstackedwidget.h
    ${MUSIC_WIDGETCORE_DIR}/musiclayoutanimation.h
    ${MUSIC_WIDGETCORE_DIR}/musicopenfilewidget.h
    ${MUSIC_WIDGETCORE_DIR}/musictoolmenuwidget.h
    ${MUSIC_WIDGETCORE_DIR}/musicgiflabelwidget.h
    ${MUSIC_WIDGETCORE_DIR}/musicsplititemclickedlabel.h
    ${MUSIC_WIDGETCORE_DIR}/musicemojilabelwidget.h
    ${MUSIC_WIDGETCORE_DIR}/musictransitionanimationlabel.h
    ${MUSIC_WIDGETCORE_DIR}/musicsongslistabstracttablewidget.h
    ${MUSIC_WIDGET_DIR}/musicdownloadstatuslabel.h
    ${MUSIC_WIDGET_DIR}/musicsettingwidget.h
    ${MUSIC_WIDGET_DIR}/musicbackgroundskindialog.h
    ${MUSIC_WIDGET_DIR}/musicsystemtraymenu.h
    ${MUSIC_WIDGET_DIR}/musicequalizerdialog.h
    ${MUSIC_WIDGET_DIR}/musicwindowextras.h
    ${MUSIC_WIDGET_DIR}/musicsongslisttablewidget.h
    ${MUSIC_WIDGET_DIR}/musicsongslistiteminfowidget.h
    ${MUSIC_WIDGET_DIR}/musicsongsearchonlinewidget.h
    ${MUSIC_WIDGET_DIR}/musicsongstoolitemrenamedwidget.h
    ${MUSIC_WIDGET_DIR}/musicsongslistplaywidget.h
    ${MUSIC_WIDGET_DIR}/musicsongslistfunctionwidget.h
    ${MUSIC_WIDGET_DIR}/musicsongslistplayedtablewidget.h
    ${MUSIC_WIDGET_DIR}/musicqualitychoicewidget.h
    ${MUSIC_WIDGET_DIR}/musicbackgroundlistwidget.h
    ${MUSIC_WIDGET_DIR}/musicbackgroundpalettewidget.h
    ${MUSIC_WIDGET_DIR}/musicbackgroundpopwidget.h
    ${MUSIC_WIDGET_DIR}/musicenhancedwidget.h
    ${MUSIC_WIDGET_DIR}/musicdownloadwidget.h
    ${MUSIC_WIDGET_DIR}/musicdownloadmgmtwidget.h
    ${MUSIC_WIDGET_DIR}/musicsongsharingwidget.h
    ${MUSIC_WIDGET_DIR}/musicsourceupdatewidget.h
    ${MUSIC_WIDGET_DIR}/musicglobalhotkeyedit.h
    ${MUSIC_WIDGET_DIR}/musicsimilarfoundwidget.h
    ${MUSIC_WIDGET_DIR}/musicplaybackmodewidget.h
    ${MUSIC_WIDGET_DIR}/musicvolumepopwidget.h
    ${MUSIC_WIDGET_DIR}/musicmorefunctionspopwidget.h
    ${MUSIC_WIDGET_DIR}/musicplayedlistwidget.h
    ${MUSIC_WIDGET_DIR}/musicalbumfoundwidget.h
    ${MUSIC_WIDGET_DIR}/musicsoundeffectswidget.h
    ${MUSIC_WIDGET_DIR}/musicartistfoundwidget.h
    ${MUSIC_WIDGET_DIR}/musicsonglistsharingwidget.h
    ${MUSIC_LIB_DIR}/musicapplication.h
    ${MUSIC_LIB_DIR}/musicleftareawidget.h
    ${MUSIC_LIB_DIR}/musictopareawidget.h
    ${MUSIC_LIB_DIR}/musicrightareawidget.h
    ${MUSIC_LIB_DIR}/musicbottomareawidget.h
    ${MUSIC_LIB_DIR}/musicapplicationobject.h
    ${MUSIC_UI_DIR}/musicuiobject.h
    ${MUSIC_UI_DIR}/musiccontextuiobject.h
    ${MUSIC_UI_DIR}/musicdesktoplrcuiobject.h
    ${MUSIC_UI_DIR}/musicfunctionlistuiobject.h
    ${MUSIC_UI_DIR}/musicfunctionuiobject.h
    ${MUSIC_UI_DIR}/musicinlinefloatuiobject.h
    ${MUSIC_UI_DIR}/musicinlinelrcuiobject.h
    ${MUSIC_UI_DIR}/musicleftitemlistuiobject.h
    ${MUSIC_UI_DIR}/musicmagicwidgetuiobject.h
    ${MUSIC_UI_DIR}/musicqualitywidgetuiobject.h
    ${MUSIC_UI_DIR}/musictinyuiobject.h
    ${MUSIC_UI_DIR}/musictoolsetsuiobject.h
    ${MUSIC_UI_DIR}/musicvideofloatuiobject.h
    ${MUSIC_UI_DIR}/musicvideouiobject.h
  )

set(MUSIC_SOURCES
    ${MUSIC_NETWORK_DIR}/radio/musicradiochannelthread.cpp
    ${MUSIC_NETWORK_DIR}/radio/musicradioplaylistthread.cpp
    ${MUSIC_NETWORK_DIR}/radio/musicradiosongsthread.cpp
    ${MUSIC_NETWORK_DIR}/radio/musicradiothreadabstract.cpp
    ${MUSIC_NETWORK_DIR}/nr/musicdatadownloadthread.cpp
    ${MUSIC_NETWORK_DIR}/nr/musictextdownloadthread.cpp
    ${MUSIC_NETWORK_DIR}/nr/musicdatatagdownloadthread.cpp
    ${MUSIC_NETWORK_DIR}/tt/musicdownloadttinterface.cpp
    ${MUSIC_NETWORK_DIR}/tt/musicttdatadownloadthread.cpp
    ${MUSIC_NETWORK_DIR}/tt/musictttextdownloadthread.cpp
    ${MUSIC_NETWORK_DIR}/tt/musicdownloadqueryttthread.cpp
    ${MUSIC_NETWORK_DIR}/tt/musicdownloadqueryttalbumthread.cpp
    ${MUSIC_NETWORK_DIR}/tt/musicdownloadqueryttartistthread.cpp
    ${MUSIC_NETWORK_DIR}/tt/musicdownloadttinterface.cpp
    ${MUSIC_NETWORK_DIR}/wy/musicdownloadwyinterface.cpp
    ${MUSIC_NETWORK_DIR}/wy/musicdownloadquerywythread.cpp
    ${MUSIC_NETWORK_DIR}/wy/musicwytextdownloadthread.cpp
    ${MUSIC_NETWORK_DIR}/wy/musicwycommentsthread.cpp
    ${MUSIC_NETWORK_DIR}/wy/musicwydiscoverlistthread.cpp
    ${MUSIC_NETWORK_DIR}/wy/musicdownloadquerywyalbumthread.cpp
    ${MUSIC_NETWORK_DIR}/wy/musicdownloadquerywyartistthread.cpp
    ${MUSIC_NETWORK_DIR}/xm/musicdownloadxminterface.cpp
    ${MUSIC_NETWORK_DIR}/xm/musicdownloadqueryxmthread.cpp
    ${MUSIC_NETWORK_DIR}/xm/musicdownloadqueryxmalbumthread.cpp
    ${MUSIC_NETWORK_DIR}/xm/musicdownloadqueryxmartistthread.cpp
    ${MUSIC_NETWORK_DIR}/xm/musicxmtextdownloadthread.cpp
    ${MUSIC_NETWORK_DIR}/kg/musicdownloadquerykgthread.cpp
    ${MUSIC_NETWORK_DIR}/kg/musicdownloadquerykgalbumthread.cpp
    ${MUSIC_NETWORK_DIR}/kg/musicdownloadquerykgartistthread.cpp
    ${MUSIC_NETWORK_DIR}/kg/musicdownloadkginterface.cpp
    ${MUSIC_NETWORK_DIR}/kw/musicdownloadquerykwthread.cpp
    ${MUSIC_NETWORK_DIR}/kw/musicdownloadquerykwalbumthread.cpp
    ${MUSIC_NETWORK_DIR}/kw/musicdownloadquerykwartistthread.cpp
    ${MUSIC_NETWORK_DIR}/kw/musicdownloadkwinterface.cpp
    ${MUSIC_NETWORK_DIR}/kw/musickwtextdownloadthread.cpp
    ${MUSIC_NETWORK_DIR}/bd/musicdownloadquerybdthread.cpp
    ${MUSIC_NETWORK_DIR}/bd/musicdownloadquerybdalbumthread.cpp
    ${MUSIC_NETWORK_DIR}/bd/musicdownloadquerybdartistthread.cpp
    ${MUSIC_NETWORK_DIR}/bd/musicdownloadbdinterface.cpp
    ${MUSIC_NETWORK_DIR}/qq/musicdownloadqueryqqthread.cpp
    ${MUSIC_NETWORK_DIR}/qq/musicdownloadqueryqqalbumthread.cpp
    ${MUSIC_NETWORK_DIR}/qq/musicdownloadqueryqqartistthread.cpp
    ${MUSIC_NETWORK_DIR}/qq/musicdownloadqqinterface.cpp
    ${MUSIC_NETWORK_DIR}/qq/musicqqtextdownloadthread.cpp
    ${MUSIC_NETWORK_DIR}/yyt/musicdownloadqueryyytthread.cpp
    ${MUSIC_NETWORK_DIR}/musicnetworkabstract.cpp
    ${MUSIC_NETWORK_DIR}/musicdownloadthreadabstract.cpp
    ${MUSIC_NETWORK_DIR}/musicsourcedownloadthread.cpp
    ${MUSIC_NETWORK_DIR}/musicnetworkthread.cpp
    ${MUSIC_NETWORK_DIR}/musicnetworkproxy.cpp
    ${MUSIC_NETWORK_DIR}/musicnetworkoperator.cpp
    ${MUSIC_NETWORK_DIR}/musicnetworktestthread.cpp
    ${MUSIC_NETWORK_DIR}/musicbackgrounddownload.cpp
    ${MUSIC_NETWORK_DIR}/musicdownloadqueuecache.cpp
    ${MUSIC_NETWORK_DIR}/musicdownloadqueryfactory.cpp
    ${MUSIC_NETWORK_DIR}/musicdownloadquerythreadabstract.cpp
    ${MUSIC_NETWORK_DIR}/musictranslationthread.cpp
    ${MUSIC_NETWORK_DIR}/musicvoicettsthread.cpp
    ${MUSIC_NETWORK_DIR}/musicidentifysongsthread.cpp
    ${MUSIC_CORE_DIR}/utils/musiccoreutils.cpp
    ${MUSIC_CORE_DIR}/utils/musiccoreutils.cpp
    ${MUSIC_CORE_DIR}/utils/musicwidgetutils.cpp
    ${MUSIC_CORE_DIR}/utils/musicnumberutils.cpp
    ${MUSIC_CORE_DIR}/utils/musicstringutils.cpp
    ${MUSIC_CORE_DIR}/musicglobalhotkey.cpp
    ${MUSIC_CORE_DIR}/musicformats.cpp
    ${MUSIC_CORE_DIR}/musictime.cpp
    ${MUSIC_CORE_DIR}/musicplayer.cpp
    ${MUSIC_CORE_DIR}/musicplaylist.cpp
    ${MUSIC_CORE_DIR}/musicabstractxml.cpp
    ${MUSIC_CORE_DIR}/musicxmlconfigmanager.cpp
    ${MUSIC_CORE_DIR}/musicbackgroundmanager.cpp
    ${MUSIC_CORE_DIR}/musicconnectionpool.cpp
    ${MUSIC_CORE_DIR}/musicregeditmanager.cpp
    ${MUSIC_CORE_DIR}/musiccoremplayer.cpp
    ${MUSIC_CORE_DIR}/musicsong.cpp
    ${MUSIC_CORE_DIR}/musicsongtag.cpp
    ${MUSIC_CORE_DIR}/musiccryptographichash.cpp
    ${MUSIC_CORE_DIR}/musicsemaphoreloop.cpp
    ${MUSIC_LOCALSEARCH_DIR}/core/musiclocalsongsearchrecordconfigmanager.cpp
    ${MUSIC_LOCALSEARCH_DIR}/musiclocalsongsearchdialog.cpp
    ${MUSIC_LOCALSEARCH_DIR}/musiclocalsongsearchedit.cpp
    ${MUSIC_LOCALSEARCH_DIR}/musiclocalsongsearchinlineedit.cpp
    ${MUSIC_LOCALSEARCH_DIR}/musiclocalsongsearchpopwidget.cpp
    ${MUSIC_LRCMANAGER_DIR}/musiclrcanalysis.cpp
    ${MUSIC_LRCMANAGER_DIR}/musiclrcmanager.cpp
    ${MUSIC_LRCMANAGER_DIR}/musiclrcmanagerfordesktop.cpp
    ${MUSIC_LRCMANAGER_DIR}/musiclrcmanagerforinline.cpp
    ${MUSIC_LRCMANAGER_DIR}/musiclrccontainer.cpp
    ${MUSIC_LRCMANAGER_DIR}/musiclrccontainerfordesktop.cpp
    ${MUSIC_LRCMANAGER_DIR}/musiclrccontainerforinline.cpp
    ${MUSIC_LRCMANAGER_DIR}/musiclrcsearchwidget.cpp
    ${MUSIC_LRCMANAGER_DIR}/musiclrcsearchtablewidget.cpp
    ${MUSIC_LRCMANAGER_DIR}/musiclrcartphotouploadwidget.cpp
    ${MUSIC_LRCMANAGER_DIR}/musiclrcartphotolabel.cpp
    ${MUSIC_LRCMANAGER_DIR}/musiclrcfloatwidget.cpp
    ${MUSIC_LRCMANAGER_DIR}/musiclrcfloatsettingwidget.cpp
    ${MUSIC_LRCMANAGER_DIR}/musiclrcfloatphotowidget.cpp
    ${MUSIC_LRCMANAGER_DIR}/musiclrcmakerwidget.cpp
    ${MUSIC_LRCMANAGER_DIR}/musiclrcerrorwidget.cpp
    ${MUSIC_LRCMANAGER_DIR}/musiclrclocallinkwidget.cpp
    ${MUSIC_LRCMANAGER_DIR}/musiclrcfromkrc.cpp
    ${MUSIC_LRCMANAGER_DIR}/musiclrccommentswidget.cpp
    ${MUSIC_LRCMANAGER_DIR}/musiclrctranslatedwidget.cpp
    ${MUSIC_LRCMANAGER_DIR}/musiclrccolorwidget.cpp
    ${MUSIC_REMOTEWIDGET_DIR}/musicremotewidget.cpp
    ${MUSIC_REMOTEWIDGET_DIR}/musicremotewidgetforsquare.cpp
    ${MUSIC_REMOTEWIDGET_DIR}/musicremotewidgetforrectangle.cpp
    ${MUSIC_REMOTEWIDGET_DIR}/musicremotewidgetfordiamond.cpp
    ${MUSIC_REMOTEWIDGET_DIR}/musicremotewidgetforcircle.cpp
    ${MUSIC_REMOTEWIDGET_DIR}/musicremotewidgetforsimplestyle.cpp
    ${MUSIC_REMOTEWIDGET_DIR}/musicremotewidgetforcomplexstyle.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/core/musicaudiorecordercore.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/core/musicdesktopwallpaperthread.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/core/musictimerautoobject.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/core/musiclocalsongsmanagerthread.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/core/musicnetworkspeedtestthread.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/core/musicmobiledevicesthread.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/core/musicsongchecktoolscore.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicmobiledeviceswidget.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicaudiorecorderwidget.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/musictimerwidget.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/musiclocalsongsmanagerwidget.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/musictransformwidget.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicfileinformationwidget.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicdesktopwallpaperwidget.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/musiclocalsongstablewidget.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicnetworkspeedsuspensionwidget.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicnetworkspeedtestwidget.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicnetworkconnectiontestwidget.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicspeedmeterwidget.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicvolumegainwidget.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicsoundtouchwidget.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicsongringtonemakerwidget.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicidentifysongswidget.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicsongchecktoolswidget.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicsongchecktoolstablewidget.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicsongchecktoolsitemselecteddialog.cpp
    ${MUSIC_TOOLSETSWIDGET_DIR}/musicgrabwidget.cpp
    ${MUSIC_TOOLSWIDGET_DIR}/core/musicdownloadrecordconfigmanager.cpp
    ${MUSIC_TOOLSWIDGET_DIR}/core/musicwebentainradiodatebase.cpp
    ${MUSIC_TOOLSWIDGET_DIR}/core/musicfilereceiveserver.cpp
    ${MUSIC_TOOLSWIDGET_DIR}/core/musicfilesenderserver.cpp
    ${MUSIC_TOOLSWIDGET_DIR}/musicconnectmobilewidget.cpp
    ${MUSIC_TOOLSWIDGET_DIR}/musicconnecttransferwidget.cpp
    ${MUSIC_TOOLSWIDGET_DIR}/musicconnecttransfertablewidget.cpp
    ${MUSIC_TOOLSWIDGET_DIR}/musicwebradiotoolwidget.cpp
    ${MUSIC_TOOLSWIDGET_DIR}/musicwebentainradiowidget.cpp
    ${MUSIC_TOOLSWIDGET_DIR}/musicwebentainradiolistview.cpp
    ${MUSIC_TOOLSWIDGET_DIR}/musicwebmusicradiolistview.cpp
    ${MUSIC_TOOLSWIDGET_DIR}/musicwebmusicradiowidget.cpp
    ${MUSIC_TOOLSWIDGET_DIR}/musicsongstoolboxwidget.cpp
    ${MUSIC_TOOLSWIDGET_DIR}/musicsongssummariziedwidget.cpp
    ${MUSIC_TOOLSWIDGET_DIR}/musictoolsetswidget.cpp
    ${MUSIC_TOOLSWIDGET_DIR}/musicdownloadrecordwidget.cpp
    ${MUSIC_TOOLSWIDGET_DIR}/musiccloudfilemanagerdialog.cpp
    ${MUSIC_TOOLSWIDGET_DIR}/musiccloudsharedsongwidget.cpp
    ${MUSIC_TOOLSWIDGET_DIR}/musiccloudtablewidget.cpp
    ${MUSIC_USERMANAGER_DIR}/core/musicusermodel.cpp
    ${MUSIC_USERMANAGER_DIR}/core/musicuserconfigmanager.cpp
    ${MUSIC_USERMANAGER_DIR}/musicuserrecordwidget.cpp
    ${MUSIC_USERMANAGER_DIR}/musicusermanagerdialog.cpp
    ${MUSIC_USERMANAGER_DIR}/musicuserdialog.cpp
    ${MUSIC_USERMANAGER_DIR}/musicuserlineedit.cpp
    ${MUSIC_USERMANAGER_DIR}/musicuserwindow.cpp
    ${MUSIC_VIDEOKITS_DIR}/core/musicbarragerecordconfigmanager.cpp
    ${MUSIC_VIDEOKITS_DIR}/core/musicbarragewidget.cpp
    ${MUSIC_VIDEOKITS_DIR}/musicvideocontrolwidget.cpp
    ${MUSIC_VIDEOKITS_DIR}/musicvideoview.cpp
    ${MUSIC_VIDEOKITS_DIR}/musicvideotablewidget.cpp
    ${MUSIC_VIDEOKITS_DIR}/musicvideoplaywidget.cpp
    ${MUSIC_VIDEOKITS_DIR}/musicvideofloatwidget.cpp
    ${MUSIC_VIDEOKITS_DIR}/musicvideoqualitypopwidget.cpp
    ${MUSIC_VIDEOKITS_DIR}/musicvideobarragestylepopwidget.cpp
    ${MUSIC_WIDGETCORE_DIR}/musicabstracttablewidget.cpp
    ${MUSIC_WIDGETCORE_DIR}/musicabstractmovedialog.cpp
    ${MUSIC_WIDGETCORE_DIR}/musicabstractmovewidget.cpp
    ${MUSIC_WIDGETCORE_DIR}/musicabstractmoveresizewidget.cpp
    ${MUSIC_WIDGETCORE_DIR}/musicfillitemtablewidget.cpp
    ${MUSIC_WIDGETCORE_DIR}/musicquerytablewidget.cpp
    ${MUSIC_WIDGETCORE_DIR}/musicqueryfoundtablewidget.cpp
    ${MUSIC_WIDGETCORE_DIR}/musicslowmovingtablewidget.cpp
    ${MUSIC_WIDGETCORE_DIR}/musicitemdelegate.cpp
    ${MUSIC_WIDGETCORE_DIR}/musicmarqueewidget.cpp
    ${MUSIC_WIDGETCORE_DIR}/musicpreviewlabel.cpp
    ${MUSIC_WIDGETCORE_DIR}/musicmessagebox.cpp
    ${MUSIC_WIDGETCORE_DIR}/musicprogresswidget.cpp
    ${MUSIC_WIDGETCORE_DIR}/musicclickedlabel.cpp
    ${MUSIC_WIDGETCORE_DIR}/musicclickedslider.cpp
    ${MUSIC_WIDGETCORE_DIR}/musicmovinglabelslider.cpp
    ${MUSIC_WIDGETCORE_DIR}/musictoastlabel.cpp
    ${MUSIC_WIDGETCORE_DIR}/musicroundanimationlabel.cpp
    ${MUSIC_WIDGETCORE_DIR}/musiccodearea.cpp
    ${MUSIC_WIDGETCORE_DIR}/musicfloatabstractwidget.cpp
    ${MUSIC_WIDGETCORE_DIR}/musictimersliderwidget.cpp
    ${MUSIC_WIDGETCORE_DIR}/musiccutsliderwidget.cpp
    ${MUSIC_WIDGETCORE_DIR}/musicanimationstackedwidget.cpp
    ${MUSIC_WIDGETCORE_DIR}/musiclayoutanimation.cpp
    ${MUSIC_WIDGETCORE_DIR}/musicopenfilewidget.cpp
    ${MUSIC_WIDGETCORE_DIR}/musictoolmenuwidget.cpp
    ${MUSIC_WIDGETCORE_DIR}/musicgiflabelwidget.cpp
    ${MUSIC_WIDGETCORE_DIR}/musicsplititemclickedlabel.cpp
    ${MUSIC_WIDGETCORE_DIR}/musicemojilabelwidget.cpp
    ${MUSIC_WIDGETCORE_DIR}/musictransitionanimationlabel.cpp
    ${MUSIC_WIDGETCORE_DIR}/musicsongslistabstracttablewidget.cpp
    ${MUSIC_WIDGET_DIR}/musicdownloadstatuslabel.cpp
    ${MUSIC_WIDGET_DIR}/musicsettingwidget.cpp
    ${MUSIC_WIDGET_DIR}/musicbackgroundskindialog.cpp
    ${MUSIC_WIDGET_DIR}/musicsystemtraymenu.cpp
    ${MUSIC_WIDGET_DIR}/musicequalizerdialog.cpp
    ${MUSIC_WIDGET_DIR}/musicwindowextras.cpp
    ${MUSIC_WIDGET_DIR}/musicsongslisttablewidget.cpp
    ${MUSIC_WIDGET_DIR}/musicsongslistplayedtablewidget.cpp
    ${MUSIC_WIDGET_DIR}/musicsongslistiteminfowidget.cpp
    ${MUSIC_WIDGET_DIR}/musicsongsearchonlinewidget.cpp
    ${MUSIC_WIDGET_DIR}/musicsongstoolitemrenamedwidget.cpp
    ${MUSIC_WIDGET_DIR}/musicsongslistplaywidget.cpp
    ${MUSIC_WIDGET_DIR}/musicsongslistfunctionwidget.cpp
    ${MUSIC_WIDGET_DIR}/musicqualitychoicewidget.cpp
    ${MUSIC_WIDGET_DIR}/musicbackgroundlistwidget.cpp
    ${MUSIC_WIDGET_DIR}/musicbackgroundpalettewidget.cpp
    ${MUSIC_WIDGET_DIR}/musicbackgroundpopwidget.cpp
    ${MUSIC_WIDGET_DIR}/musicenhancedwidget.cpp
    ${MUSIC_WIDGET_DIR}/musicdownloadwidget.cpp
    ${MUSIC_WIDGET_DIR}/musicdownloadmgmtwidget.cpp
    ${MUSIC_WIDGET_DIR}/musicsongsharingwidget.cpp
    ${MUSIC_WIDGET_DIR}/musicsourceupdatewidget.cpp
    ${MUSIC_WIDGET_DIR}/musicglobalhotkeyedit.cpp
    ${MUSIC_WIDGET_DIR}/musicsimilarfoundwidget.cpp
    ${MUSIC_WIDGET_DIR}/musicplaybackmodewidget.cpp
    ${MUSIC_WIDGET_DIR}/musicvolumepopwidget.cpp
    ${MUSIC_WIDGET_DIR}/musicmorefunctionspopwidget.cpp
    ${MUSIC_WIDGET_DIR}/musicplayedlistwidget.cpp
    ${MUSIC_WIDGET_DIR}/musicalbumfoundwidget.cpp
    ${MUSIC_WIDGET_DIR}/musicsoundeffectswidget.cpp
    ${MUSIC_WIDGET_DIR}/musicartistfoundwidget.cpp
    ${MUSIC_WIDGET_DIR}/musicsonglistsharingwidget.cpp
    ${MUSIC_LIB_DIR}/musicapplication.cpp
    ${MUSIC_LIB_DIR}/musicleftareawidget.cpp
    ${MUSIC_LIB_DIR}/musictopareawidget.cpp
    ${MUSIC_LIB_DIR}/musicrightareawidget.cpp
    ${MUSIC_LIB_DIR}/musicbottomareawidget.cpp
    ${MUSIC_LIB_DIR}/musicapplicationobject.cpp
  )

SET(MUSIC_UIS
    ${MUSIC_UI_DIR}/musicApplication/musicapplication.ui
    ${MUSIC_UI_DIR}/musicLrcKits/musiclrcartphotouploadwidget.ui
    ${MUSIC_UI_DIR}/musicLrcKits/musiclrcmakerwidget.ui
    ${MUSIC_UI_DIR}/musicLrcKits/musiclrcsearchwidget.ui
    ${MUSIC_UI_DIR}/musicLrcKits/musiclrcerrorwidget.ui
    ${MUSIC_UI_DIR}/musicLrcKits/musiclrclocallinkwidget.ui
    ${MUSIC_UI_DIR}/musicLrcKits/musiclrccolorwidget.ui
    ${MUSIC_UI_DIR}/musicToolsetsKits/musicaudiorecorderwidget.ui
    ${MUSIC_UI_DIR}/musicToolsetsKits/musicdesktopwallpaperwidget.ui
    ${MUSIC_UI_DIR}/musicToolsetsKits/musicfileinformationwidget.ui
    ${MUSIC_UI_DIR}/musicToolsetsKits/musiclocalsongsmanagerwidget.ui
    ${MUSIC_UI_DIR}/musicToolsetsKits/musicnetworkspeedtestwidget.ui
    ${MUSIC_UI_DIR}/musicToolsetsKits/musicnetworkconnectiontestwidget.ui
    ${MUSIC_UI_DIR}/musicToolsetsKits/musictimerwidget.ui
    ${MUSIC_UI_DIR}/musicToolsetsKits/musictransformwidget.ui
    ${MUSIC_UI_DIR}/musicToolsetsKits/musicvolumegainwidget.ui
    ${MUSIC_UI_DIR}/musicToolsetsKits/musicsoundtouchwidget.ui
    ${MUSIC_UI_DIR}/musicToolsetsKits/musicsongringtonemakerwidget.ui
    ${MUSIC_UI_DIR}/musicToolsetsKits/musicsongchecktoolswidget.ui
    ${MUSIC_UI_DIR}/musicToolsetsKits/musicsongchecktoolsitemselecteddialog.ui
    ${MUSIC_UI_DIR}/musicToolsKits/musiccloudfilemanagerdialog.ui
    ${MUSIC_UI_DIR}/musicToolsKits/musicconnecttransferwidget.ui
    ${MUSIC_UI_DIR}/musicToolsKits/musicwebentainradiowidget.ui
    ${MUSIC_UI_DIR}/musicToolsKits/musicwebmusicradiowidget.ui
    ${MUSIC_UI_DIR}/musicUserKits/musicuserdialog.ui
    ${MUSIC_UI_DIR}/musicUserKits/musicusermanagerdialog.ui
    ${MUSIC_UI_DIR}/musicUserKits/musicuserrecordwidget.ui
    ${MUSIC_UI_DIR}/musicUserKits/musicuserwindow.ui
    ${MUSIC_UI_DIR}/musicWidgetKits/musicbackgroundskindialog.ui
    ${MUSIC_UI_DIR}/musicWidgetKits/musicbackgroundpalettewidget.ui
    ${MUSIC_UI_DIR}/musicWidgetKits/musicdownloadresetwidget.ui
    ${MUSIC_UI_DIR}/musicWidgetKits/musicdownloadwidget.ui
    ${MUSIC_UI_DIR}/musicWidgetKits/musicequalizerdialog.ui
    ${MUSIC_UI_DIR}/musicWidgetKits/musicmessagebox.ui
    ${MUSIC_UI_DIR}/musicWidgetKits/musicsettingwidget.ui
    ${MUSIC_UI_DIR}/musicWidgetKits/musicsongsharingwidget.ui
    ${MUSIC_UI_DIR}/musicWidgetKits/musicsongslistiteminfowidget.ui
    ${MUSIC_UI_DIR}/musicWidgetKits/musicsourceupdatewidget.ui
    ${MUSIC_UI_DIR}/musicWidgetKits/musicsoundeffectswidget.ui
    ${MUSIC_UI_DIR}/musicWidgetKits/musicsonglistsharingwidget.ui
)

if(TTK_QT_VERSION VERSION_GREATER "4")
  QT5_WRAP_UI(MUSIC_UIS_H ${MUSIC_UIS})
  QT5_WRAP_CPP(MUSIC_MOC_H ${MUSIC_HEADERS})
  
  if(TTK_BUILD_SHARED)
    add_library(${TARGET_NAME} SHARED ${MUSIC_SOURCES} ${MUSIC_UIS_H} ${MUSIC_MOC_H} ${MUSIC_HEADERS})
  else()
    add_library(${TARGET_NAME} STATIC ${MUSIC_SOURCES} ${MUSIC_UIS_H} ${MUSIC_MOC_H} ${MUSIC_HEADERS})
  endif()
  list(APPEND QT5_LIBS Qt5::Core Qt5::Network Qt5::Sql Qt5::Xml Qt5::Gui Qt5::Widgets Qt5::Multimedia Qt5::MultimediaWidgets Qt5::WinExtras ${QMMP_LIBRARY} MusicUi MusicExtras zlib -lIphlpapi -luser32)
  if(UNIX)
    list(REMOVE_ITEM QT5_LIBS Qt5::WinExtras -lIphlpapi -luser32)
  endif()
  target_link_libraries(${TARGET_NAME} ${QT5_LIBS})
else()
  QT4_WRAP_UI(MUSIC_UIS_H ${MUSIC_UIS})
  QT4_WRAP_CPP(MUSIC_MOC_H ${MUSIC_HEADERS})

  if(TTK_BUILD_SHARED)
    add_library(${TARGET_NAME} SHARED ${MUSIC_SOURCES} ${MUSIC_UIS_H} ${MUSIC_MOC_H} ${MUSIC_HEADERS})
  else()
    add_library(${TARGET_NAME} STATIC ${MUSIC_SOURCES} ${MUSIC_UIS_H} ${MUSIC_MOC_H} ${MUSIC_HEADERS})
  endif()
  list(APPEND QT4_LIBS ${QMMP_LIBRARY} ${QT_QTMULTIMEDIA_LIBRARY} ${QT_QTSQL_LIBRARY} ${QT_QTXML_LIBRARY} ${QT_QTGUI_LIBRARY} ${QT_QTNETWORK_LIBRARY} ${QT_QTCORE_LIBRARY} MusicUi MusicExtras zlib -lIphlpapi -luser32)
  if(UNIX)
    list(REMOVE_ITEM QT4_LIBS ${QT_QTMULTIMEDIA_LIBRARY} -lIphlpapi -luser32)
    list(APPEND QT4_LIBS -lQtMultimediaKit)
  endif()
  target_link_libraries(${TARGET_NAME} ${QT4_LIBS})
endif()
